/*
 * Arquivo de Especies. Serve para chamar as funcoes
 * referentes a Especies.
 *
 */

#include <stdio.h>
#include <string.h>
#include "CriaTxt.c"
#include "ManipulaEspecie.c"
#include "Estruturas.h"
#include "Utilitarios.h"

void menuEspecies() {
    FILE * arquivo;
    int opcao = 0, idEspecie = 0;

    do
    {
        printf("\n\nMENU ESPECIES\n");
        printf("\n1 = Insercao");
        printf("\n2 = Busca");
        printf("\n3 = Remocao");
        printf("\n0 = Sair\n\n");
        scanf("%i",&opcao);

        switch (opcao) {
        case 1:
            arquivo = criaTxt("especies.txt");
            escreveArquivo(arquivo);
            break;
        case 2:
            printf("\nDigite o ID da especie: ");
            scanf("%d",&idEspecie);

            arquivo = fopen("especies.txt","r");

            Especie especiePesquisada = lerEspecieID(arquivo, idEspecie);
            if(especiePesquisada.id != -1) {
                printf("\nId %d | Nome popular: %s | Nome cientifico: %s | Descricao: %s\n", especiePesquisada.id, especiePesquisada.nomePopular, especiePesquisada.nomeCientifico, especiePesquisada.descricao);
            } else {
                printf("\nEspecie nao encontrada.\n");
            }
            fclose(arquivo);
            break;
        case 3:
            arquivo = fopen("especies.txt","rw+");

            printf("\nDigite o ID da especie: ");
            scanf("%d",&idEspecie);

            if (removeEspecieID(arquivo, idEspecie)) {
                printf("\nRemovido com sucesso\n");
            }else{
                printf("\nNão Removido\n");
            }

            fclose(arquivo);
            break;
        }
    } while (opcao != 0);
}

